package com.zzyl.mapper;

import com.github.pagehelper.Page;
import com.zzyl.entity.AlertRule;
import com.zzyl.vo.AlertRuleVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

@Mapper
public interface AlertRuleMapper {
    /**
     *新增报警规则
     * @param alertRule
     */
    void insert(AlertRule alertRule);
    /**
     * 删除告警规则
     * @param id
     */
    void deleteByPrimaryKey(Long id);
    /**
     * 启用/禁用
     * @param id
     * @param status
     */
    void updateStatus(@Param("id") Long id, @Param("status") Integer status);
    /**
     * 更新告警规则
     * @param alertRule
     */
    void updateByPrimaryKeySelective(AlertRule alertRule);
    /**
     * 根据ID获取单个告警规则
     * @param id
     * @return
     */
    AlertRule selectByPrimaryKey(Long id);
    /**
     * 分页查询报警规则
     * @param alertRuleName
     * @param productKey
     * @param functionName
     * @return
     */
    Page<AlertRuleVo> page(@Param("alertRuleName") String alertRuleName, @Param("productKey") String productKey, @Param("functionName") String functionName);
}
